package com.whfc.ms.api.md.service;

import com.whfc.common.result.ListData;
import com.whfc.common.result.PageData;
import com.whfc.quality.dto.*;

import java.util.Date;

/**
 * @author qzexing
 * @version 1.0
 * @date 2021/11/17 14:04
 */
public interface MdQualityBoardService {

    /**
     * 大屏-质量-问题类型统计
     *
     * @param deptId    组织机构ID
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return 问题类型统计
     */
    ListData<MdQualityStatisticsDTO> getCheckTypeStatistics(Integer deptId, Date startTime, Date endTime);

    /**
     * 大屏-质量-检查记录列表
     *
     * @param deptId   组织机构ID
     * @param pageNum  页码
     * @param pageSize 每页数量
     * @return 检查记录列表
     */
    PageData<MdQualityCheckDTO> getCheckList(Integer deptId, Integer pageNum, Integer pageSize);

    /**
     * 大屏-质量-问题分析
     *
     * @param deptId 组织机构ID
     * @return 问题分析
     */
    MdQualityCheckAnalysisDTO getCheckAnalysis(Integer deptId);

    /**
     * 大屏-质量-问题动态
     *
     * @param deptId   组织机构ID
     * @param pageNum  页码
     * @param pageSize 每页数量
     * @return 问题动态
     */
    PageData<MdQualityCheckLogDTO> getCheckLog(Integer deptId, Integer pageNum, Integer pageSize);

    /**
     * 大屏-质量-未销问题
     *
     * @param deptId    组织机构ID
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return 未销问题
     */
    QualityCheckUnfinishedDTO qualityCheckUnfinished(Integer deptId, Date startTime, Date endTime);
}
